标签:RFC 6238
3 篇文章
平台指南
知识库
服务端和客户端怎么接入 TOTP 二次验证?Go、PHP、JS 三份示例代码
服务端接入以 golang 和 php 为例,客户端接入以 js 为例,三份完整的 TOTP 示例代码,展示密钥怎么生成、6 位动态码怎么算出来、服务端怎么校验用户输入。代码按 RFC 6238 实现,能看清时间戳、HMAC-SHA1 和动态截断这三步是怎么拼起来的,适合给自己的应用或网站加上动态口令验证。
TOTP 算法原理详解:30 秒验证码是怎么生成的
TOTP 用共享密钥和当前时间在本地算出 6 位动态验证码,断网也能出码。本文按 RFC 6238 拆开计算过程:时间因子、HMAC-SHA1、动态截断,并讲清服务端为什么容忍前后一个时间窗口、真正该保管的是密钥还是验证码,以及换机时怎么避免密钥丢失。
